System and method for printable document viewer optimization

ABSTRACT

In some embodiments a method includes sending, from a composition compute device and to a user compute device, a data file that is based on a print file template. The data file includes (1) a plurality of raster image fonts based on user selected text, (2) a low-resolution image based on a user selected image, and (3) frame data indicative of coordinate locations on a webpage for the raster image fonts and for the low-resolution image. The method includes receiving, at the composition computer device and from the user computer device, a signal indicative of a modification to the data file. The method includes defining, at the composition compute device, a print file based on (1) a plurality of vector fonts based on the user selected text, (2) a high-resolution image based on the user selected image, (3) the frame data, and (4) the modification to the data file.

BACKGROUND

Some embodiments described herein relate generally to a system andmethod for printable document viewer optimization.

Known systems for viewing and modifying print jobs based on printabledocument templates exist. Such known systems can be high bandwidth, usesignificant computer resources and/or can be slow. By way of example,known system may require loading and transmission of full font sets,higher resolution images, and/or full documents. In such an example, auser wishing to view and/or modify such a print job may need a computedevice including a dedicated local printable document viewing andmodification program; Additionally, full font sets, for example, vectorfont sets can include proprietary information. A system that transmitsthose full font sets can potentially expose that proprietaryinformation.

Accordingly, a need exists for an improved system and method forprintable document viewer optimization.

SUMMARY

In one aspect, a method includes sending, from a composition computedevice and to a user compute device, a data file that is based on aprint file template. The data file includes (1) a plurality of rasterimage fonts based on user selected text, (2) a low-resolution imagebased on a user selected image, and (3) frame data indicative ofcoordinate locations on a webpage for the raster image fonts and for thelow-resolution image. The method includes receiving, at the compositioncomputer device and from the user computer device, a signal indicativeof a modification to the data file. The method includes defining, at thecomposition compute device, a print file based on (1) a plurality ofvector fonts based on the user selected text, (2) a high-resolutionimage based on the user selected image, (3) the frame data, and (4) themodification to the data file.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a printable document viewer optimizationsystem according to an embodiment.

FIG. 2 is a schematic diagram of a printable document vieweroptimization system according to an embodiment.

FIG. 3 is a flow chart showing a method of operating a printabledocument viewer optimization system according to an embodiment.

FIG. 4 is a flow chart showing a method of operating a printabledocument viewer optimization system according to an embodiment.

DETAILED DESCRIPTION

In one aspect the disclosure relates to a method includes sending, froma composition compute device and to a user compute device, a data filethat is based on a print file template. The data file includes (1) aplurality of raster image fonts based on user selected text, (2) alow-resolution image based on a user selected image, and (3) frame dataindicative of coordinate locations on a webpage for the raster imagefonts and for the low-resolution image. The method includes receiving,at the composition computer device and from the user computer device, asignal indicative of a modification to the data file. The methodincludes defining, at the composition compute device, a print file basedon (1) a plurality of vector fonts based on the user selected text, (2)a high-resolution image based on the user selected image, (3) the framedata, and (4) the modification to the data file.

In another aspect the disclosure relates to a method that includessending, from a first compute device and to a second compute device, asignal indicative of a selection of a print file template such that thesecond compute device loads a set of raster image fonts associated withthe print file template. The method includes sending, from the firstcompute device and to the second compute device, a data file including(1) text having been input by a user, and (2) an indication of a sectionof an image. The method includes receiving, at the first compute deviceand from the second compute device, a signal indicative of a previewimage that is based on (1) the data file, (2) the set of raster imagefonts, (3) a low-resolution image based on the user selected image, and(4) frame data associated with the print file template. The methodincludes sending, from the first compute device and to the secondcompute device, a signal indicative of a modification of the data file.The method includes receiving, at the first compute device and from thesecond compute device, an indication of the definition of a print filebased on (1) a set of vector fonts based on the user selected text, (2)a high resolution image based on the user selected image, and (3) theframe data, and (4) the modification to the data file.

In a further aspect the disclosure relates to an apparatus that includesa composition compute device configured to send, to a user computedevice, a data file that is based on a print file template. The datafile includes (1) a plurality of raster image fonts based on userselected text, (2) a low-resolution image based on a user selectedimage, and (3) frame data indicative of coordinate locations on awebpage for the raster image fonts and for the low-resolution image. Thecomposition computer device configured to receive, from the usercomputer device, a signal indicative of a modification to the data file.The composition computer device configured to define a print file basedon (1) a plurality of vector fonts based on the user selected text, (2)a high resolution image based on the user selected image, (3) the framedata, and (4) the modification to the data file.

As used in this specification, the singular forms “a,” “an” and “the”include plural referents unless the context clearly dictates otherwise.Thus, for example, the term “a client device” is intended to mean aclient device or a combination of client devices.

As used in this specification, a printable document template can be atemplate including data to define printable documents and print files. Aprintable document template can include frame and coordinate data thatincludes, for example, the layout (columns, etc), coordinate location oftext and image locations (x,y coordinates, etc), font characters andstyle, images, etc. The printable document template can be associatedwith a full capability font set (“full font set”) that can includesvector fonts for use by a raster image processor and configured toprovide any font character in the full font set in a variety of sizes.The full font set can be configured to be processed into a downgradedcapability font set (“downgraded font set”) that can include rasterfonts, rasterized from corresponding vector fonts, for use by aprintable document viewer and configured to provide a subset ofcharacters and/or sizes as included in the printable document template.The printable document can be associated with a higher resolution imageor set of images for use by a raster image processor. The printabledocument template can be associated with a lower resolution image or setof images corresponding to the higher resolution image or set of imagesfor use by the printable document viewer. A printable document template,and subsequently, a print file can start with text and no images, or canstart with images and no text. In such embodiments, a user can add textand/or images during a editing/modification process.

As used in this specification a printable document can include a fileconfigured to be printed and/or a document configured to be processedinto a file configured to be printed, for example, a print file. A printfile can include, for example, a PPML, VDX, PDF/VT, postscript, AFP,VPS, JLYT, VIPP, or other type of print file used in the commercialprint industry, e.g. data files used by the raster image processor.

As is discussed below, a printable document viewer optimization systemcan be used to define a printable document on a compute device based ona template stored on a composition device. Specifically such as a systemcan reduce an amount of data sent between the compute device and thecomposition device. More specifically such a system can be configuredsuch that the compute device handles low resolution images, downgradedfonts, and coordinate layouts, and such that the composition devicehandles higher resolution images, full feature fonts, and rasterizationof the printable document. FIG. 1 depicts a block diagram of a printabledocument viewer optimization system (“system”) 100. System 100 includesa compute device 110 and a composition device 130. Compute device 110 isconfigured to be operatively coupled to composition device 130.

Compute device 110 can include a communication module (not shown in FIG.1), an input/output module (not shown in FIG. 1), a display module (notshown in FIG. 1), and a processor module (not shown in FIG. 1). Computedevice 110 can be configured to communicate over a network, such as, forexample, the internet, with composition device 130. Compute device 110can also be configured to facilitate interaction between a user andcomposition device 130. Specifically, compute device 110 can beconfigured to provide a gateway for a user to define a printabledocument print file. In some embodiments, compute device 110 caninclude, for example, a personal computer, a workstation terminal, aportable computing device such as a personal digital personal digitalassistant (PDA), a standard mobile telephone, and/or a tablet personalcomputer (PC), and/or the like. In some embodiments, compute device 110can be configured to execute a browser based program, for example anetwork browser. Compute device 110 can be configured to execute aprintable document viewer and/or editing process and/or program. Theprintable document viewer and/or editor process and/or program can be asoftware and/or firmware program embodied in a non-transitoryprocessor-readable medium storing code representing instructions tocause a processor to implement the program.

Compute device 110 can include the communication module configured tooperatively couple compute device 110 to one or more networks.Specifically, the communication module can be configured to operativecouple compute device 110 to the one or more networks via a wiredconnection, such as for example, Ethernet, fiber channel, a serial bus,etc, and/or via a wireless connection, such as for example, usingWireless Fidelity (Wi-Fi), Bluetooth, cellular (such as a thirdgeneration mobile telecommunications (3G) or a fourth generation mobiletelecommunications (4G)), or any other wireless communication standard.In some embodiments, the communication module can include acommunication card/chip including, for example, a wireless antenna(s),communication ports, etc. The communication card can be configured toreceive signals, data and/or other transmitted information fromcomposition device 130 and can communicate that transmitted data to theinput/output module, the display module, and/or the processor module.The communication module can receive signals, data and/or othertransmitted information from the input/output module, the displaymodule, and/or the processor module, for example, based on a user input,and can communicate that transmitted data to composition device 130 viathe network.

Compute device 110 can include the input/output module configured tofacilitate interaction between a user and compute device 110 and/orcomposition device 130. The input/output module can include and/or canbe configured to be coupled to inputs, such as for example, computerperipherals, touch screens, haptic inputs, user tracking inputs, and/orthe like. The input/output module can be configured to direct userand/or other inputs to other elements of compute device 110, for exampleto the communication module for transmission to composition device 130,to the display module for a visual representation of the input and/or ofthe results on an input, and/or to the processor module. In someembodiments, the input/output module can facilitate selection of aprintable document template, personalization and/or modification of thea printable document template, selection of text, characteristics oftext, images, characteristics of images, orientation or any aspect of aprintable document template, and/or the like, indications of an approvaland/or disapproval of a printable document and/or preview based on theprintable document template, etc.

Compute device 110 can include the display module configured to displayand/or cause to be displayed, printable document templates, printabledocument previews based on printable document templates, and/or canallow a user to select, personalize/modify, and/or otherwise manipulatethe same. In some embodiments, the display module can include a display,such as for example, a liquid crystal, light emitting diode, or cathoderay tube display, and/or can include a display computer chip/cardconfigured to cause the display to display images associate with system100. In such embodiments, the display can include touch, haptic, motionand/or other like characteristics. The display module can communicationwith the input/output module, the communication module, and/or theprocessor module to facilitate selection of a printable documenttemplate, personalization and/or modification of the a printabledocument template, selection of text, characteristics of text, images,characteristics of images, orientation or any aspect of a printabledocument template, and/or the like, indications of an approval and/ordisapproval of a printable document and/or preview based on theprintable document template, etc.

Compute device 110 can include the processor module configured execute aprintable document viewer and/or editing process and/or program. Theprocessor module can include a computer processor and/or memory, forexample a random access memory (RAM), a memory buffer, a hard drive, adatabase, an erasable programmable read-only memory (EPROM), anelectrically erasable read-only memory (EEPROM), and/or so forth. Theprocessor module can be configured to execute the printable documentviewer and/or editing process and/or program in, for example, a networkbrowser. The processor module can execute, via, for example, the networkbrowser, a dynamic image rendering process and/or program that isconfigured to receive data streams, for example markup language datastreams, and render a preview image based on frame and coordinateinformation, font information, and/or image information included in thedata file and/or stream (“data stream”). In this manner, the processormodule can output a signal indicative of the preview image to thedisplay module to be viewed by a user. The processor module can beconfigured to receive signals indicative of a modification to atemplate, for example, from a user via the input/output module, and cantransmit signals indicative of the modification to the compositiondevice 130.

System 100 includes composition device 130 that can include acommunication module (not shown in FIG. 1), a storage module (not shownin FIG. 1), and a composition module (not shown in FIG. 1). Compositiondevice 130 can be configured to communicate over a network, such as, forexample, the internet, with compute device 130. Composition device 130can also be configured to store printable documents templates andassociated fonts, images, and/or the like, and can be configured tofacilitate the personalization/modification, processing, and/orcomposition of printable documents templates, printable documents,and/or previews of printable document templates and/or printabledocuments. In some embodiments, composition device 130 can include, forexample, a server and/or workstation computer/terminal. In someembodiments, composition device 130 can be configured to execute aprintable document storage, modification, and or composition processand/or program that can interact with a browser based program operatedby compute device 110. The printable document storage, modification, andor composition process and/or program can be a software and/or firmwareprogram embodied in a non-transitory processor-readable medium storingcode representing instructions to cause a processor to implement theprogram.

Composition device 130 can include the communication module configuredto operatively couple composition device 130 to one or more networks.Specifically, the communication module can be configured to operativecouple composition device 130 to the one or more networks via a wiredconnection, such as for example, Ethernet, fiber channel, a serial bus,etc, and/or via a wireless connection, such as for example, usingWireless Fidelity (Wi-Fi), Bluetooth, cellular (such as a thirdgeneration mobile telecommunications (3G) or a fourth generation mobiletelecommunications (4G)), or any other wireless communication standard.In some embodiments, the communication module can include acommunication card/chip including, for example, a wireless antenna(s),communication ports, etc. The communication card can be configured toreceive signals, data and/or other transmitted information from computedevice 110 and can communicate that transmitted data to, the storagemodule and/or the composition module. The communication module canreceive signals, data and/or other transmitted information from thetemplate module, the storage module, the modification module and/or thecomposition module and can communicate that transmitted data to computedevice 110 via the network.

Composition device 130 can include the composition module configured tofacilitate the selection, organization and manipulation of printabledocument templates, to define printable document templates and/orprintable document previews, and/or to compose printable documents forprinting, and/or to define data streams representative of the same. Insome embodiments, composition module can be configured to receive, via,for example, the communication module, printable document templatesdesigned at compute device 110, designed at a design device (not shown),and or can include software and/or hardware to allow a user to designprintable document templates. The composition module can be operativelycoupled to, and can store printable document templates in the storagemodule. In some embodiments, the composition module can receive via thecommunication module a signal indicative of a selection of a printabledocument template stored in the storage module, can retrieve theprintable document template from the storage module, and can send a datastream representative of a preview including and/or based on theprintable document template, a portion of the printable documenttemplate and/or a downgraded printable document template. In suchembodiments, the composition module can be configured to define (e.g.rasterize in real time) and/or otherwise retrieve a downgraded font setbased on a full font set associated with a printable document template,can be configured to define and/or otherwise retrieve a lower resolutionimage based on a higher resolution image associated with the printabledocument template, and can be configured to convert the downgraded fontset, lower resolution image, and frame and coordinate data associatedwith the printable document template into a markup language data streamconfigured to be processed and displayed by compute device 110. In thismanner, system 100 can transmit a data stream that uses a lower relativeamount of bandwidth, and can protect the proprietary data included inthe vector fonts sets and/or high resolution images, for example, toprevent a user of compute device 110 from using the vector font setand/or high resolution images to produce printable documents outside ofsystem 100.

In some embodiments, the composition module can receive a signalindicative of a modification to a printable document template. In suchembodiments, the indication of the modification can be received fromcompute device 110 via the network, and can include only the requestedchanges to the printable document template. Said another way, thecomposition module may not receive a modified printable documenttemplate, or the printable document template and an indication of themodifications, but only the indication of modification. In suchembodiments, modification to the printable document template can includedifferent font size and/or style, different font characters, differentimages and/or image sizes, and/or new coordinate locations of charactersand/or images, and/or the like. In some embodiments, the compositioncan, in response to receiving the indication of the modification, sendto the compute device 110 a data stream indicative of modified previewfile, as a markup language stream, including the modifications requestedby the user. In some embodiments, original aspects of the templatepreviously transmitted may not be transmitted.

In some embodiments, the composition module can receive an indicationfrom a user of compute device 110 that the printable document is final,and can compose a print file for printing, e.g., a print file configuredto be rasterized by a raster image processor (not shown). In suchembodiments, the print file can include a full font set and/or highresolution images. In such embodiments, the print file can includesPPML, VDX, PDF/VT, postscript, AFP, VPS, JLYT, VIPP, or other type ofprint file used in the commercial print industry, e.g. data files usedby the RIP.

Composition device 130 can include the storage module configured tostore printable document template and fonts and images associated withprintable document templates. The storage module can includes a computerstorage product such as, for example, a random access memory (RAM), amemory buffer, a hard drive, a database, an erasable programmableread-only memory (EPROM), an electrically erasable read-only memory(EEPROM), and/or so forth. The storage module is operatively coupled tothe composition module and can store instructions to cause thecomposition module to execute modules, processes and/or functions. Insome embodiments, the storage module can store links to locations offonts and/or images in addition to, or in lieu of, storing locally.

FIG. 2 depicts schematic view of a printable document vieweroptimization system (“system”) 200 according to an embodiment. System200 can be similar to, and include similar elements to, system 100described above. By way of example, system 200 can include a computedevice 210 and a composition device 230 which can be similar to computedevice 110 and composition device 130, respectively. System 200 can beused to define a printable document on a compute device based on atemplate stored on a composition device. Compute device 210 includes acommunication module 212, an input/output module 214, a display module218, and a processor module 218. Composition device 230 includes acommunication module 232, a composition module 234, and a storage module236.

FIG. 3 is a flow chart depicting a method 300 for operating a printabledocument viewer optimization system. Method 300 includes sending, from acomposition compute device and to a user compute device, a data filethat is based on a print file template, at 302. The data file includes(1) a plurality of raster image fonts based on user selected text, (2) alow-resolution image based on a user selected image, and (3) frame dataindicative of coordinate locations on a webpage for the raster imagefonts and for the low-resolution image. Method 300 includes receiving,at the composition computer device and from the user computer device, asignal indicative of a modification to the data file, at 304. Method 300includes defining, at the composition compute device, a print file, at306. The print file is based on (1) a plurality of vector fonts based onthe user selected text, (2) a high-resolution image based on the userselected image, (3) the frame data, and (4) the modification to the datafile.

FIG. 4 is a flow chart depicting a method 400 for operating a printabledocument viewer optimization system. Method 400 includes sending, from afirst compute device and to a second compute device, a signal indicativeof a selection of a print file template such that the second computedevice loads a set of raster image fonts associated with the print filetemplate, at 402. Method 400 includes sending, from the first computedevice and to the second compute device, a data file including (1) texthaving been input by a user, and (2) an indication of a section of animage, at 404. Method 400 includes receiving, at the first computedevice and from the second compute device, a signal indicative of apreview image, at 406. The preview image is based on (1) the data file,(2) the set of raster image fonts, (3) a low-resolution image based onthe user selected image, and (4) frame data associated with the printfile template. Method 400 includes sending, from the first computedevice and to the second compute device, a signal indicative of amodification of the data file, at 408. Method 400 includes receiving, atthe first compute device and from the second compute device, anindication of the definition of a print file, at 410. The print file isbased on (1) a set of vector fonts based on the user selected text, (2)a high resolution image based on the user selected image, (3) the framedata, and (4) the modification to the data file.

In an example, and with respect to FIG. 2, one or more users can utilizesystem 200, specifically, compute device 210, to select a printabledocument template (“template”), modify the template, finalize thetemplate, and send a printable document to be printed. As used in thisexample, the template can be a template for a business card, however, inother embodiments; any type of template can be used, for example, arestaurant menu, sales flyer, etc. Initially, a template designer candesign a business card template including a font size and style, images,and frame information, for example, coordinate locations for the imageand text locations. In some embodiments, the template designer candesign the business card template on composition device 230, via, forexample a general compute device (not shown) and can store the businesscard template in the storage module 236. In other embodiments, thetemplate designer can design the business card template on a designdevice (not shown) operatively coupled to the composition device 230,via, for example network 220, and can send the business card template tothe composition device 230 from the design device, and the compositiondevice 230 can store the business card template in the storage module236.

In the example, a user can use compute device 210, and can send a signalto composition device 230 including a request to view availabletemplates, including the business card template. In response to therequest, composition module 234 of composition device 230 can retrieve,from storage module 236, previews, for example thumbnails, of theavailable templates, and can send a data steam indicative of thepreviews to the compute device 210. Display module 216 can cause thepreviews to be displayed, and the user can select, via and input deviceoperatively coupled to input module 214, the business card template. Inresponse to the selection, composition device 230 can receive a requestfrom compute device 110, and can retrieve, from storage module 236, thebusiness card template including frame and coordinate information, theassociated lower resolution image, and the associated downgraded fontset. In some embodiments, and as discussed above, the composition module234 can retrieve the vector font set associated with the template, andcan rasterize the characters associated with the template afterselection of the template. For example, a template can be designed touser 30 characters of the same size from a full font set that includes80 characters in a variety of sizes. Composition device 230 can send,via communication module 232, network 220, and communication module 212,a markup language data stream, including the frame and coordinate data,the low resolution image, and the downgraded font set, to the processormodule 218.

In the example, the processor module 218, executing the browser program,can cause display module 216 to display a representation of the businesscard template based on the frame and coordinate data, the lowerresolution image, and the downgraded font set. The user can modify therepresentation of the business card template, for example, by addingand/or otherwise changing text, resizing and/or otherwise changing theimage, changing the frame and/or coordinate information, for example,moving a location of one or more text locations and/or the imagelocation. The processor module 218 can receive the modifications to therepresentation of business card template from a user via input/outputmodule 214, and can send a data stream to the composition module 232including a signal indicative of the modifications to therepresentations. Said another way, the data stream can only include dataassociated with the changes to the frames and coordinates, text andimages, but not the actual frames and coordinates, text or images.

In the example, composition device 230 can send, via communicationmodule. 232, network 220, and communication module 212, a markuplanguage data stream, including the modified frame and coordinate data,the modified low resolution image, and the modified downgraded font set,to the processor module 218. In some embodiments, a user may only modifya portion of the template. In such embodiments, the markup language datastream can include a combination of modified and original data. Forexample, if the user did not modify the image, a new copy of the imagemay not be transmitted. The processor module 218, executing the browserprogram, can cause display module 216 to display a representation of themodified business card template based on the modified frame andcoordinate data, the modified lower resolution image, and the modifieddowngraded font set. The user of compute device 210 can continue tomodify the business card template or can indicate that the printabledocument is final. In some embodiments, additional users can preview andmodify the template at any and all stages of modification, and canmodify the template as described above. The composition module 234 canreceive an indication that the print document is final and, in responseto that indication, can compose the print file, for example, as a PPMLfile, the composed print file including the vector fonts associated withthe business card template, and the higher resolution image associatedwith the business card template. The composed print file can be storedand/or transmitted to a printer.

While shown in FIGS. 1 and 2 as including a single compute device 110,210, in some embodiments, a system can include more compute devices suchthat more than one user can select and/or modify a template, and/or suchthat a user can selected or modify a template from one or more computedevices.

Some embodiments described herein relate to a computer storage productwith a computer-readable medium (also can be referred to as aprocessor-readable medium) having instructions or computer code thereonfor performing various computer-implemented operations. The media andcomputer code (also can be referred to as code) may be those designedand constructed for the specific purpose or purposes. Examples ofcomputer-readable media include, but are not limited to: magneticstorage media such as hard disks, floppy disks, and magnetic tape;optical storage media such as Compact Disc/Digital Video Discs(CD/DVDs), Compact Disc-Read Only Memories (CD-ROMs), and holographicdevices; magneto-optical storage media such as optical disks; carrierwave signal processing modules; and hardware devices that are speciallyconfigured to store and execute program code, such asApplication-Specific Integrated Circuits (ASICs), Programmable LogicDevices (PLDs), and Read-Only Memory (ROM) and Random-Access Memory(RAM) devices.

Examples of computer code include, but are not limited to, micro-code ormicro-instructions, machine instructions, such as produced by acompiler, code used to produce a web service, and files containinghigher-level instructions that are executed by a computer using aninterpreter. For example, embodiments may be implemented using Java,C++, or other programming languages (e.g., object-oriented programminglanguages) and development tools. Additional examples of computer codeinclude, but are not limited to, control signals, encrypted code, andcompressed code.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, notlimitation, and various changes in form and details may be made. Anyportion of the apparatus and/or methods described herein may be combinedin any combination, except mutually exclusive combinations. Theembodiments described herein can include various combinations and/orsub-combinations of the functions, components and/or features of thedifferent embodiments described.

Where methods described above indicate certain events occurring incertain order, the ordering of certain events can be modified.Additionally, certain of the events can be performed concurrently in aparallel process when possible, as well as performed sequentially asdescribed above. Any portion of the apparatus and/or methods describedherein may be combined in any combination, except mutually exclusivecombinations. The embodiments described herein can include variouscombinations and/or sub-combinations of the functions, components and/orfeatures of the different embodiments described.

1-20. (canceled)
 21. A method, comprising: receiving, at a computedevice and from a second compute device, a signal indicative of apreview image that is based on (1) a data file, (2) a set of rasterimage fonts, (3) a low-resolution image based on a user selected image,and (4) frame data associated with a print file template; sending, fromthe first compute device and to the second compute device, a signalindicative of a modification of the data file; receiving, at the firstcompute device and from the second compute device, an indication of adefinition of a print file based on (1) a set of vector fonts based onuser selected text, (2) a high resolution image based on the userselected image, and (3) the frame data, and (4) the modification to thedata file.
 22. The method of claim 21, wherein the set of raster imagesfonts include a set of bitmap fonts.
 23. The method of claim 21, whereinthe modification of the data file includes a modification to acoordinate location on the print file template for the low-resolutionimage.
 24. The method of claim 21, wherein the data file is a first datafile, the user selected text is a first user selected text, the userselected image is a first user selected image, and the frame data isfirst frame data, the method further comprising: receiving, at the firstcompute device and from the second compute device, an indication of thedefinition of the print file based on (1) a second set of vector fontsbased on a second user selected text, (2) a second high resolution imagebased on a second user selected image, and (3) second frame data, and(4) a modification to a second data file.
 25. The method of claim 21,further comprising: sending, from the first compute device and to thesecond compute device, a signal indicative that the print file is final.26. The method of claim 21, wherein the data file is an extensiblemarkup language file.
 27. The method of claim 21, wherein the data filedoes not include vector fonts.
 28. The method of claim 21, wherein theset of raster image fonts only includes the fonts to render the userselected text.
 29. A method, comprising: sending, from a first computedevice and to a second compute device, a signal indicative of aselection of a print file template such that the second compute deviceloads a set of raster image fonts associated with the print filetemplate; sending, from the first compute device and to the secondcompute device, a data file including (1) text having been input by auser, and (2) an indication of a selection of an image; receiving, atthe first compute device and from the second compute device, a signalindicative of a preview image that is based on (1) the data file, (2)the set of raster image fonts, (3) a low-resolution image based on auser selected image, and (4) frame data associated with the print filetemplate; sending, from the first compute device and to the secondcompute device, a signal indicative of a modification of the data file;receiving, at the first compute device and from the second computedevice, an indication of a definition of a print file based on (1) a setof vector fonts based on the user inputted text, (2) a high resolutionimage based on the user selected image, and (3) the frame data, and (4)the modification to the data file.
 30. The method of claim 29, furthercomprising: sending, from the first compute device and to a display, thepreview image.
 31. The method of claim 29, wherein the modification ofthe data file includes a modification to a coordinate location on theprint file template for the low-resolution image.
 32. The method ofclaim 29, wherein the data file is a data interchange format file. 33.The method of claim 29, wherein the data file is an extensible markuplanguage file.
 34. An apparatus, comprising: a first compute deviceconfigured to receive, from a second compute device, a signal indicativeof a preview image that is based on (1) a data file, (2) a set of rasterimage fonts, (3) a low-resolution image based on a user selected image,and (4) frame data associated with a print file template; the firstcompute device configured to send, to the second compute device, asignal indicative of a modification to the data file, and the firstcompute device configured to receive from the second compute device, anindication of a definition of a print file based on (1) a set of vectorfonts based on user selected text, (2) a high resolution image based onthe user selected image, and (3) the frame data, and (4) themodification to the data file.
 35. The apparatus of claim 34, whereinthe plurality of raster images fonts include a plurality of bitmapfonts.
 36. The apparatus of claim 34, wherein the data file includes thelow-resolution image and the modification of the data file includes amodification to a coordinate location on the print file template for thelow-resolution image.
 37. The apparatus of claim 34, wherein the datafile is a first data file, the user selected text is a first userselected text, and the frame data is first frame data, the apparatusfurther comprising: the second compute device configured to send to thefirst compute device, a second indication of the definition of the printfile based on (1) a second set of vector fonts based on a second userselected text, (2) a second high resolution image based on a second userselected image, and (3) second frame data, and (4) a modification to asecond data file.
 38. The apparatus of claim 34, wherein the firstcompute device is configured to send a signal indicative that the printfile is final.
 39. The apparatus of claim 34, wherein the data file isan extensible markup language file.
 40. The apparatus of claim 34,wherein the data file does not include vector fonts.